Spectrum-based Software Fault Localization: A Survey of Techniques, Advances, and Challenges
نویسندگان
چکیده
Despite being one of the most basic tasks in software development, debugging is still performed in a mostly manual way, leading to high cost and low performance. To address this problem, researchers have studied promising approaches, such as Spectrum-based Fault Localization (SFL) techniques, which pinpoint program elements more likely to contain faults. This survey discusses the state-of-the-art of SFL techniques, including their costs, the type and number of faults they address, the programs they utilize in their validation, the testing information that support them, and their use at industrial settings. Notwithstanding the advances, there are still challenges for the industry to adopt these techniques, which we analyze in this paper. This includes using program analysis to generate reduced sets of suspicious entities; combining different spectra to fine-tune the fault localization ability; using strategies to collect fine-grained coverage levels from suspicious coarser levels for balancing execution costs and output precision; and proposing new techniques to cope with multiple-fault programs. Moreover, additional user studies are needed to better understand how SFL techniques can be used in practice. We conclude by presenting a concept map about topics and challenges for future research in SFL.
منابع مشابه
Automated Fault Localization Techniques; A Survey
Fault localization is a task in software debugging to identify the set of statements in a program that cause the program to fail. As size and complexity of software grows,and the more developers participate in debugging, fault localization becomes harder than before. Automated fault localization techniques aim to facilitate this task by guiding the developers to a small portion of program that ...
متن کاملSurvey of Software Fault Localization
I present a survey of automated techniques for software fault localization. Fault localization or localizing the root cause of failure is one of the most difficult processes in software debugging. Hence, many automated techniques have emerged to help in this process. Most of these techniques are based on the principles used in real life for fault diagnosis. I have used these principles to class...
متن کاملA New Spectrum-based Fault Localization Method by Using Clustering Algorithm
Locating the errors or faults in the software debugging process is very expensive and time-consuming. Therefore, automated debugging has become popular due to its capability to reduce cost and increase the efficiency. Spectrum-based method is one of the most important automated fault localization methods in the Software debugging techniques. Most of the existing spectrum-based fault localizatio...
متن کاملEffective Fault Localization Using Weighted Test Cases
Locating faults in a program is prohibitively timeconsuming and tedious, and therefore, many automated fault localization techniques have been proposed to assist in the debugging process. Spectrum based fault localization are promising techniques that can guide developers to the possible locations of faults. These techniques make a summary on the number of passing and failing tests cases to pri...
متن کاملSoftware Fault Localization: A Survey
Now a day‟s Software is required in all professional disciplines. Hence, it is required to check software for fault localization to maintain the software quality. Software fault localization is an activity of finding the locations of fault in a program. Considering the increasing complexity of software, manual fault localization is not feasible, there is a firm necessity for techniques which ca...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- CoRR
دوره abs/1607.04347 شماره
صفحات -
تاریخ انتشار 2016